From 53453c8e8d3ca3fabc86e30c892f788e5e6e248c Mon Sep 17 00:00:00 2001 From: Sondre Lefsaker Date: Sat, 2 May 2015 12:59:58 +0200 Subject: [PATCH] Add new field `rustc_args` to the `Profile` - This field will be set by the `cargo rustc` command, only if one target is being compiled - The field can not be read from the Cargo.toml --- src/cargo/core/manifest.rs | 2 ++ src/cargo/ops/cargo_rustc/mod.rs | 5 +++-- src/cargo/util/toml.rs | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/cargo/core/manifest.rs b/src/cargo/core/manifest.rs index e9b9e154a..6c2c5edfc 100644 --- a/src/cargo/core/manifest.rs +++ b/src/cargo/core/manifest.rs @@ -116,6 +116,7 @@ pub struct Profile { pub opt_level: u32, pub lto: bool, pub codegen_units: Option, // None = use rustc default + pub rustc_args: Option>, pub debuginfo: bool, pub debug_assertions: bool, pub rpath: bool, @@ -464,6 +465,7 @@ impl Default for Profile { opt_level: 0, lto: false, codegen_units: None, + rustc_args: None, debuginfo: false, debug_assertions: false, rpath: false, diff --git a/src/cargo/ops/cargo_rustc/mod.rs b/src/cargo/ops/cargo_rustc/mod.rs index d80b750a1..a4a5bb1fc 100644 --- a/src/cargo/ops/cargo_rustc/mod.rs +++ b/src/cargo/ops/cargo_rustc/mod.rs @@ -621,9 +621,10 @@ fn build_base_args(cx: &Context, profile: &Profile, crate_types: &[&str]) { let Profile { - opt_level, lto, codegen_units, debuginfo, debug_assertions, rpath, test, - doc: _doc, + opt_level, lto, codegen_units, ref rustc_args, debuginfo, debug_assertions, + rpath, test, doc: _doc, } = *profile; + let _ = rustc_args; // Move to cwd so the root_path() passed below is actually correct cmd.cwd(cx.config.cwd()); diff --git a/src/cargo/util/toml.rs b/src/cargo/util/toml.rs index 3a50195ee..35450030e 100644 --- a/src/cargo/util/toml.rs +++ b/src/cargo/util/toml.rs @@ -814,6 +814,7 @@ fn build_profiles(profiles: &Option) -> Profiles { opt_level: opt_level.unwrap_or(profile.opt_level), lto: lto.unwrap_or(profile.lto), codegen_units: codegen_units, + rustc_args: None, debuginfo: debug.unwrap_or(profile.debuginfo), debug_assertions: debug_assertions.unwrap_or(profile.debug_assertions), rpath: rpath.unwrap_or(profile.rpath), -- 2.30.2